import { App } from 'vue';
import { Delete } from '@icon-park/vue-next';
import {
    RetweetOutlined,
    PicLeftOutlined,
    BorderOuterOutlined,
    WarningOutlined,
    StopOutlined,
    IssuesCloseOutlined,
    EditOutlined,
    CheckSquareOutlined,
    HighlightOutlined,
    CopyOutlined,
    DeleteOutlined,
    SnippetsOutlined,
    BgColorsOutlined,
    AlignLeftOutlined,
    BoldOutlined,
    StrikethroughOutlined,
    RedoOutlined,
    FontColorsOutlined,
    OrderedListOutlined,
    UnorderedListOutlined,
    ColumnWidthOutlined,
    ColumnHeightOutlined,
    RadiusSettingOutlined,
    AreaChartOutlined,
    PieChartOutlined,
    BarChartOutlined,
    DotChartOutlined,
    LineChartOutlined,
    RadarChartOutlined,
    HeatMapOutlined,
    FallOutlined,
    RiseOutlined,
    StockOutlined,
    BoxPlotOutlined,
    FundOutlined,
    SlidersOutlined,
    AndroidOutlined,
    AppleOutlined,
    WindowsOutlined,
    ChromeOutlined,
    GithubOutlined,
    AliwangwangOutlined,
    DingdingOutlined,
    DropboxOutlined,
    AntDesignOutlined,
    BehanceOutlined,
    SlackOutlined,
    SketchOutlined,
    AlibabaOutlined,
    AccountBookOutlined,
    AimOutlined,
    AlertOutlined,
    ApartmentOutlined,
    ApiOutlined,
    AppstoreAddOutlined,
    AppstoreOutlined,
    AudioOutlined,
    AudioMutedOutlined,
    AuditOutlined,
    BankOutlined,
    BarcodeOutlined,
    BarsOutlined,
    BellOutlined,
    BlockOutlined,
    BookOutlined,
    BorderOutlined,
    BorderlessTableOutlined,
    BranchesOutlined,
    BugOutlined,
    BuildOutlined,
    BulbOutlined,
    CalculatorOutlined,
    CalendarOutlined,
    CameraOutlined,
    CarOutlined,
    CarryOutOutlined,
    CiCircleOutlined,
    CiOutlined,
    ClearOutlined,
    CloudDownloadOutlined,
    CloudOutlined,
    CloudServerOutlined,
    CloudSyncOutlined,
    CloudUploadOutlined,
    ClusterOutlined,
    VerifiedOutlined,
    UserAddOutlined,
    UserOutlined,
    UserDeleteOutlined,
    UsergroupAddOutlined,
    UserSwitchOutlined,
    ToolOutlined,
    TagOutlined,
    SkinOutlined,
    SolutionOutlined,
    SoundOutlined,
    ShoppingCartOutlined,
    ShoppingOutlined,
    SettingOutlined,
    SisternodeOutlined,
    ShopOutlined,
    SendOutlined,
    SelectOutlined,
    ScheduleOutlined,
    ScanOutlined,
    SecurityScanOutlined,
    RestOutlined,
    ProfileOutlined,
    PartitionOutlined,
    GoldOutlined,
    GlobalOutlined,
    HomeOutlined,
    GiftOutlined,
    DeploymentUnitOutlined,
    FieldNumberOutlined,
    FlagOutlined,
    FireOutlined,
    FormatPainterOutlined,
    GatewayOutlined,
    PlusOutlined,
    CloseCircleOutlined,
} from '@ant-design/icons-vue';

const antIcons = [
    RetweetOutlined,
    PicLeftOutlined,
    BorderOuterOutlined,
    WarningOutlined,
    StopOutlined,
    IssuesCloseOutlined,
    EditOutlined,
    CheckSquareOutlined,
    HighlightOutlined,
    CopyOutlined,
    DeleteOutlined,
    SnippetsOutlined,
    BgColorsOutlined,
    AlignLeftOutlined,
    BoldOutlined,
    StrikethroughOutlined,
    RedoOutlined,
    FontColorsOutlined,
    OrderedListOutlined,
    UnorderedListOutlined,
    ColumnWidthOutlined,
    ColumnHeightOutlined,
    RadiusSettingOutlined,
    AreaChartOutlined,
    PieChartOutlined,
    BarChartOutlined,
    DotChartOutlined,
    LineChartOutlined,
    RadarChartOutlined,
    HeatMapOutlined,
    FallOutlined,
    RiseOutlined,
    StockOutlined,
    BoxPlotOutlined,
    FundOutlined,
    SlidersOutlined,
    AndroidOutlined,
    AppleOutlined,
    WindowsOutlined,
    ChromeOutlined,
    GithubOutlined,
    AliwangwangOutlined,
    DingdingOutlined,
    DropboxOutlined,
    AntDesignOutlined,
    BehanceOutlined,
    SlackOutlined,
    SketchOutlined,
    AlibabaOutlined,
    AccountBookOutlined,
    AimOutlined,
    AlertOutlined,
    ApartmentOutlined,
    ApiOutlined,
    AppstoreAddOutlined,
    AppstoreOutlined,
    AudioOutlined,
    AudioMutedOutlined,
    AuditOutlined,
    BankOutlined,
    BarcodeOutlined,
    BarsOutlined,
    BellOutlined,
    BlockOutlined,
    BookOutlined,
    BorderOutlined,
    BorderlessTableOutlined,
    BranchesOutlined,
    BugOutlined,
    BuildOutlined,
    BulbOutlined,
    CalculatorOutlined,
    CalendarOutlined,
    CameraOutlined,
    CarOutlined,
    CarryOutOutlined,
    CiCircleOutlined,
    CiOutlined,
    ClearOutlined,
    CloudDownloadOutlined,
    CloudOutlined,
    CloudServerOutlined,
    CloudSyncOutlined,
    CloudUploadOutlined,
    ClusterOutlined,
    VerifiedOutlined,
    UserAddOutlined,
    UserOutlined,
    UserDeleteOutlined,
    UsergroupAddOutlined,
    UserSwitchOutlined,
    ToolOutlined,
    TagOutlined,
    SkinOutlined,
    SolutionOutlined,
    SoundOutlined,
    ShoppingCartOutlined,
    ShoppingOutlined,
    SettingOutlined,
    SisternodeOutlined,
    ShopOutlined,
    SendOutlined,
    SelectOutlined,
    ScheduleOutlined,
    ScanOutlined,
    SecurityScanOutlined,
    RestOutlined,
    ProfileOutlined,
    PartitionOutlined,
    GoldOutlined,
    GlobalOutlined,
    HomeOutlined,
    GiftOutlined,
    DeploymentUnitOutlined,
    FieldNumberOutlined,
    FlagOutlined,
    FireOutlined,
    FormatPainterOutlined,
    GatewayOutlined,
    PlusOutlined,
    CloseCircleOutlined,
];

export function setupGlobalIcons(app: App) {
    app.component('Delete', Delete);
    antIcons.forEach((item) => {
        app.component(item.displayName, item);
    });
}
